#include "test.hpp"



//读程序

int main()
{
    //打开命名管道
    int fd = open(FNAME,O_RDONLY); //以只读打开
    if(fd == -1)
    {
        cerr << errno << " : " << strerror(errno) <<endl;
        return EOF;
    }

    //读取内容
    char str[NUM];
    while(true)
    {
         //int n = read(fd,str,sizeof(str));
         int n = read(fd,str,sizeof(char));
         if(n == sizeof(char)) //正常读取
         {
            // str[n] = 0;
            // cout << str << endl;
            cout << str[0] ;
            fflush(stdout); //因为一次截取一个字符，stdout的刷新策略是\n，需要强制刷新一下
         }
         else if(n == 0)
         {
            cout << "read exe print --- for --- quit" <<endl;
            break;
         }
         else
         {
            cerr << errno << " : " << strerror(errno) <<endl;
            return EOF;
         }
    }

    //关闭管道
    close(fd);

    return 0;
}